reprepro工具同步Deb仓库详解(附Shell半自动与自动同步Deb仓库源码)【提供两种配置web服务的方式,nginx与apache2】 您所在的位置:网站首页 innwa bank application reprepro工具同步Deb仓库详解(附Shell半自动与自动同步Deb仓库源码)【提供两种配置web服务的方式,nginx与apache2】

reprepro工具同步Deb仓库详解(附Shell半自动与自动同步Deb仓库源码)【提供两种配置web服务的方式,nginx与apache2】

#reprepro工具同步Deb仓库详解(附Shell半自动与自动同步Deb仓库源码)【提供两种配置web服务的方式,nginx与apache2】| 来源: 网络整理| 查看: 265

目录

一:创建key(前提:主仓库已经搭建完毕,此文无本地仓库搭建方法,只有签名仓库搭建方法)【注意有网址的是分仓库,主仓库随便在哪里搭建】

(1)创建GPG密钥并备份

(2)将密钥写入仓库下(仓库路径,为你创建仓库的路径。主仓库和分仓库都加)

二、建立一个web站点【nginx与apache2】(建议用apache2进行配置,成功率高,笔者nginx配置失败。报错:gpg:未找到有效的OpenPGP数据)

(1)nginx配置(二者选其一)

1、安装准备程序

2、配置nginx指向分仓库跟目录,/etc/nginx/sites-enabled/default/

3、将主机名改成uos.com.【不修改的话最后wget的时候访问不到】

4、将配置的网站,到/etc/apt/sources.list中添加源

5、导入公钥可以正常使用 ,apt-key add:

(2)apache2配置(二者选其一)

1、安装apache2

2、创建分仓库地址 (默认地址是/var/www/html)

3、复制www的路径,并修改

4、修改000-default.conf文件 

5、重启运行

三:进行reprepro同步

(1)创建一个主仓库随便一个地址(目录),并且用reprepro includedeb添加一个Deb包

1、自己找一个deb包即可 

(2)看下主仓库同步配置

1、注意箭头

(3)进行同步

四:Shell自动化同步deb仓库源码(半自动里面的路径和Codename需要自己改动【case中的】)

(1)半自动同步,需要实时更新脚本内容。量变产生质变。

(2)自动同步,输入Method和Codename即可。注意前后顺序。

一:创建key(前提:主仓库已经搭建完毕,此文无本地仓库搭建方法,只有签名仓库搭建方法)【注意有网址的是分仓库,主仓库随便在哪里搭建】 (1)创建GPG密钥并备份

在仓库/ppa下创建key目录,在目录下创建public.keys文件

mkdir -p /home/uos/Desktop/ppa/key #路径是你仓库的路径,我的仓库叫ppa,里面有conf目录,在创建个key目录,key目录有public.key文件 touch /home/uos/Desktop/ppa/key/public.key (2)将密钥写入仓库下(仓库路径,为你创建仓库的路径。主仓库和分仓库都加) #列出系统中的密钥 gpg --list-keys #密钥写入到了仓库下。 gpg --armor --export 6B7FC1801B1734DEAFCF782F3A805B095AE7DE78 >/home/grid/Desktop/ppa/key/public.key

给仓库签名:实际上就是在配置里面加上SignWith:/ppa/key/public.key,然后重新生成源数据即可:#distributions配置信息下加入以下语句SignWith:6B7FC1801B1734DEAFCF782F3A805B095AE7DE78

二、建立一个web站点【nginx与apache2】(建议用apache2进行配置,成功率高,笔者nginx配置失败。报错:gpg:未找到有效的OpenPGP数据) (1)nginx配置(二者选其一) 1、安装准备程序 sudo apt install nginx 2、配置nginx指向分仓库跟目录,/etc/nginx/sites-enabled/default/ sudo vim /etc/nginx/sites-enabled/default/

配置以下信息

注意:

server_name mabot.com;处应修改为自己的网站名。

root /home/uos/Desktop/ppa;应修改为root 分仓库地址。

server {   listen 80;   server_name uos.com;

  access_log /var/log/nginx/packages-error.log;   error_log /var/log/nginx/packages-error.log;   root /home/uos/Desktop/ppa;   index  index.html index.htm;     location / {     autoindex on;   }

  location ~ /(.*)/conf {     deny all;   }

  location ~ /(.*)/db {     deny all;   } }

3、将主机名改成uos.com.【不修改的话最后wget的时候访问不到】 hostnamectl set-hostname uos.com

添加一行:

sudo vim /etc/hosts 127.0.0.1 grid.com 4、将配置的网站,到/etc/apt/sources.list中添加源 sudo vim /etc/apt/sources.list

添加以下信息:

deb http://uos.com/ ppa main contrib non-free

最后测试仓库的签名 没有导入公钥,无法使用 apt-get update

apt-get update 5、导入公钥可以正常使用 ,apt-key add: wget -q -O - http://uos.com/key/public.key |sudo apt-key add - (2)apache2配置(二者选其一) 1、安装apache2 #更新apt源 sudo apt-get update #安装apache2 sudo apt-get install apache2

安装完成后,可以再网页中输入127.0.0.1试试,应该出现以下界面: 

2、创建分仓库地址 (默认地址是/var/www/html) mkdir www #此时pwd,应该是/home/uos/www。先跟着笔者做,成功了之后自己再改动。

3、复制www的路径,并修改 sudo vi /etc/apache2/apache2.conf #修改文件,滑到文件最下方(170行左右),复制一份上边红框内的代码,修改路径为刚才我们新建文件夹www的路径:

4、修改000-default.conf文件  sudo vi /etc/apache2/sites-enabled/000-default.conf

5、重启运行 sudo service apache2 restart

此时浏览器访问localhost就是我们想要的www站点目录了(如果还是apache的页面可能会存在缓存卡顿,就去访问127.0.0.1或者ctrl+f5强制刷新浏览器页面) 

三:进行reprepro同步

(1)创建一个主仓库随便一个地址(目录),并且用reprepro includedeb添加一个Deb包

1、自己找一个deb包即可 

(2)看下主仓库同步配置 cd conf && vim updates

1、你的updates中的Suite和Method应该指向的是同一个仓库,不然找不到。

2、Suite对应的是你要同步仓库的Codename,将其里面的deb包同步到现在的主仓库中。(注意在正确目录下进行同步,正确目录下应该有conf目录)

Suite: eagle

Method: http://127.0.0.1/wwa/

1、注意箭头

(3)进行同步 reprepro update ppa #ppa是你的主仓库名字

 好了,到目前你已经同步成功了。

四:Shell自动化同步deb仓库源码(半自动里面的路径和Codename需要自己改动【case中的】) (1)半自动同步,需要实时更新脚本内容。量变产生质变。

(2)自动同步,输入Method和Codename即可。注意前后顺序。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有